// noinspection JSUnresolvedReference /** * Field Google Map */ /* global jQuery, document, redux_change, redux, google */ (function ( $ ) { 'use strict'; redux.field_objects = redux.field_objects || {}; redux.field_objects.google_maps = redux.field_objects.google_maps || {}; /* LIBRARY INIT */ redux.field_objects.google_maps.init = function ( selector ) { if ( ! selector ) { selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-google_maps:visible' ); } $( selector ).each( function ( i ) { let delayRender; const el = $( this ); let parent = el; if ( ! el.hasClass( 'redux-field-container' ) ) { parent = el.parents( '.redux-field-container:first' ); } if ( parent.is( ':hidden' ) ) { return; } if ( parent.hasClass( 'redux-field-init' ) ) { parent.removeClass( 'redux-field-init' ); } else { return; } // Check for delay render, which is useful for calling a map // render after JavaScript load. delayRender = Boolean( el.find( '.redux_framework_google_maps' ).data( 'delay-render' ) ); // API Key button. redux.field_objects.google_maps.clickHandler( el ); // Init our maps. redux.field_objects.google_maps.initMap( el, i, delayRender ); } ); }; /* INIT MAP FUNCTION */ redux.field_objects.google_maps.initMap = async function ( el, idx, delayRender ) { let delayed; let scrollWheel; let streetView; let mapType; let address; let defLat; let defLong; let defaultZoom; let mapOptions; let geocoder; let g_autoComplete; let g_LatLng; let g_map; let noLatLng = false; // Pull the map class. const mapClass = el.find( '.redux_framework_google_maps' ); const containerID = mapClass.attr( 'id' ); const autocomplete = containerID + '_autocomplete'; const canvas = containerID + '_map_canvas'; const canvasId = $( '#' + canvas ); const latitude = containerID + '_latitude'; const longitude = containerID + '_longitude'; // Add map index to data attr. // Why, say we want to use delay_render, // and want to init the map later on. // You'd need the index number in the // event of multiple map instances. // This allows one to retrieve it // later. $( mapClass ).attr( 'data-idx', idx ); if ( true === delayRender ) { return; } // Map has been rendered, no need to process again. if ( $( '#' + containerID ).hasClass( 'rendered' ) ) { return; } // If a map is set to delay render and has been initiated // from another scrip, add the 'render' class so rendering // does not occur. // It messes things up. delayed = Boolean( mapClass.data( 'delay-render' ) ); if ( true === delayed ) { mapClass.addClass( 'rendered' ); } // Create the autocomplete object, restricting the search // to geographical location types. g_autoComplete = await google.maps.importLibrary( 'places' ); g_autoComplete = new google.maps.places.Autocomplete( document.getElementById( autocomplete ), {types: ['geocode']} ); // Data bindings. scrollWheel = Boolean( mapClass.data( 'scroll-wheel' ) ); streetView = Boolean( mapClass.data( 'street-view' ) ); mapType = Boolean( mapClass.data( 'map-type' ) ); address = mapClass.data( 'address' ); address = decodeURIComponent( address ); address = address.trim(); // Set default Lat/lng. defLat = canvasId.data( 'default-lat' ); defLong = canvasId.data( 'default-long' ); defaultZoom = canvasId.data( 'default-zoom' ); // Eval whether to set maps based on lat/lng or address. if ( '' !== address ) { if ( '' === defLat || '' === defLong ) { noLatLng = true; } } else { noLatLng = false; } // Can't have empty values, or the map API will complain. // Set default for the middle of the United States. defLat = defLat ? defLat : 39.11676722061108; defLong = defLong ? defLong : -100.47761000000003; if ( noLatLng ) { // If displaying a map based on an address. geocoder = new google.maps.Geocoder(); // Set up Geocode and pass address. geocoder.geocode( {'address': address}, function ( results, status ) { let latitude; let longitude; // Function results. if ( status === google.maps.GeocoderStatus.OK ) { // A good address was passed. g_LatLng = results[0].geometry.location; // Set map options. mapOptions = { center: g_LatLng, zoom: defaultZoom, streetViewControl: streetView, mapTypeControl: mapType, scrollwheel: scrollWheel, mapTypeControlOptions: { style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR, position: google.maps.ControlPosition.LEFT_BOTTOM }, mapId: 'REDUX_GOOGLE_MAPS', }; // Create map. g_map = new google.maps.Map( document.getElementById( canvas ), mapOptions ); // Get and set lat/long data. latitude = el.find( '#' + containerID + '_latitude' ); latitude.val( results[0].geometry.location.lat() ); longitude = el.find( '#' + containerID + '_longitude' ); longitude.val( results[0].geometry.location.lng() ); redux.field_objects.google_maps.renderControls( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ); } else { // No data found, alert the user. alert( 'Geocode was not successful for the following reason: ' + status ); } } ); } else { // If displaying map based on an lat/lng. g_LatLng = new google.maps.LatLng( defLat, defLong ); // Set map options. mapOptions = { center: g_LatLng, zoom: defaultZoom, // Start off far unless an item is selected, set by php. streetViewControl: streetView, mapTypeControl: mapType, scrollwheel: scrollWheel, mapTypeControlOptions: { style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR, position: google.maps.ControlPosition.LEFT_BOTTOM }, mapId: 'REDUX_GOOGLE_MAPS', }; // Create the map. g_map = new google.maps.Map( document.getElementById( canvas ), mapOptions ); redux.field_objects.google_maps.renderControls( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ); } }; redux.field_objects.google_maps.renderControls = function ( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ) { let markerTooltip; let infoWindow; let g_marker; let geoAlert = mapClass.data( 'geo-alert' ); // Get HTML. const input = document.getElementById( autocomplete ); // Set objects into the map. g_map.controls[google.maps.ControlPosition.TOP_LEFT].push( input ); // Bind objects to the map. g_autoComplete = new google.maps.places.Autocomplete( input ); g_autoComplete.bindTo( 'bounds', g_map ); // Get the marker tooltip data. markerTooltip = mapClass.data( 'marker-tooltip' ); markerTooltip = decodeURIComponent( markerTooltip ); // Create infoWindow. infoWindow = new google.maps.InfoWindow(); // Create marker. g_marker = new google.maps.Marker( { position: g_LatLng, map: g_map, anchorPoint: new google.maps.Point( 0, - 29 ), draggable: true, title: markerTooltip, animation: google.maps.Animation.DROP } ); geoAlert = decodeURIComponent( geoAlert ); // Place change. google.maps.event.addListener( g_autoComplete, 'place_changed', function () { let place; let address; let markerTooltip; infoWindow.close(); // Get place data. place = g_autoComplete.getPlace(); // Display alert if something went wrong. if ( ! place.geometry ) { window.alert( geoAlert ); return; } console.log( place.geometry.viewport ); // If the place has a geometry, then present it on a map. if ( place.geometry.viewport ) { g_map.fitBounds( place.geometry.viewport ); } else { g_map.setCenter( place.geometry.location ); g_map.setZoom( 17 ); // Why 17? Because it looks good. } markerTooltip = mapClass.data( 'marker-tooltip' ); markerTooltip = decodeURIComponent( markerTooltip ); // Set the marker icon. g_marker = new google.maps.Marker( { position: g_LatLng, map: g_map, anchorPoint: new google.maps.Point( 0, - 29 ), title: markerTooltip, clickable: true, draggable: true, animation: google.maps.Animation.DROP } ); // Set marker position and display. g_marker.setPosition( place.geometry.location ); g_marker.setVisible( true ); // Form array of address components. address = ''; if ( place.address_components ) { address = [( place.address_components[0] && place.address_components[0].short_name || '' ), ( place.address_components[1] && place.address_components[1].short_name || '' ), ( place.address_components[2] && place.address_components[2].short_name || '' )].join( ' ' ); } // Set the default marker info window with address data. infoWindow.setContent( '
' + place.name + '
' + address ); infoWindow.open( g_map, g_marker ); // Run Geolocation. redux.field_objects.google_maps.geoLocate( g_autoComplete ); // Fill in address inputs. redux.field_objects.google_maps.fillInAddress( el, latitude, longitude, g_autoComplete ); } ); // Marker drag. google.maps.event.addListener( g_marker, 'drag', function ( event ) { document.getElementById( latitude ).value = event.latLng.lat(); document.getElementById( longitude ).value = event.latLng.lng(); } ); // End marker drag. google.maps.event.addListener( g_marker, 'dragend', function () { redux_change( el.find( '.redux_framework_google_maps' ) ); } ); // Zoom Changed. g_map.addListener( 'zoom_changed', function () { el.find( '.google_m_zoom_input' ).val( g_map.getZoom() ); } ); // Marker Info Window. infoWindow = new google.maps.InfoWindow(); google.maps.event.addListener( g_marker, 'click', function () { const marker_info = containerID + '_marker_info'; const infoValue = document.getElementById( marker_info ).value; if ( '' !== infoValue ) { infoWindow.setContent( infoValue ); infoWindow.open( g_map, g_marker ); } } ); }; /* FILL IN ADDRESS FUNCTION */ redux.field_objects.google_maps.fillInAddress = function ( el, latitude, longitude, g_autoComplete ) { // Set variables. const containerID = el.find( '.redux_framework_google_maps' ).attr( 'id' ); // What if someone only wants city, or state, ect... // gotta do it this way to check for the address! // Need to check each of the returned components to see what is returned. const componentForm = { street_number: 'short_name', route: 'long_name', locality: 'long_name', administrative_area_level_1: 'short_name', country: 'long_name', postal_code: 'short_name' }; // Get the place details from the autocomplete object. const place = g_autoComplete.getPlace(); let component; let i; let addressType; let _d_addressType; let val; let len; document.getElementById( latitude ).value = place.geometry.location.lat(); document.getElementById( longitude ).value = place.geometry.location.lng(); for ( component in componentForm ) { if ( componentForm.hasOwnProperty( component ) ) { // Push in the dynamic form element ID again. component = containerID + '_' + component; // Assign to proper place. document.getElementById( component ).value = ''; document.getElementById( component ).disabled = false; } } // Get each component of the address from the place details // and fill the corresponding field on the form. len = place.address_components.length; for ( i = 0; i < len; i += 1 ) { addressType = place.address_components[i].types[0]; if ( componentForm[addressType] ) { // Push in the dynamic form element ID again. _d_addressType = containerID + '_' + addressType; // Get the original. val = place.address_components[i][componentForm[addressType]]; // Assign to proper place. document.getElementById( _d_addressType ).value = val; } } }; redux.field_objects.google_maps.geoLocate = function ( g_autoComplete ) { if ( navigator.geolocation ) { navigator.geolocation.getCurrentPosition( function ( position ) { const geolocation = new google.maps.LatLng( position.coords.latitude, position.coords.longitude ); const circle = new google.maps.Circle( { center: geolocation, radius: position.coords.accuracy } ); g_autoComplete.setBounds( circle.getBounds() ); } ); } }; /* API BUTTON CLICK HANDLER */ redux.field_objects.google_maps.clickHandler = function ( el ) { // Find the API Key button and react on click. el.find( '.google_m_api_key_button' ).on( 'click', function () { // Find message wrapper. const wrapper = el.find( '.google_m_api_key_wrapper' ); if ( wrapper.is( ':visible' ) ) { // If the wrapper is visible, close it. wrapper.slideUp( 'fast', function () { el.find( '#google_m_api_key_input' ).trigger( 'focus' ); } ); } else { // If the wrapper is visible, open it. wrapper.slideDown( 'medium', function () { el.find( '#google_m_api_key_input' ).trigger( 'focus' ); } ); } } ); el.find( '.google_m_autocomplete' ).on( 'keypress', function ( e ) { if ( 13 === e.keyCode ) { e.preventDefault(); } } ); // Auto select autocomplete contents, // since Google doesn't do this inherently. el.find( '.google_m_autocomplete' ).on( 'click', function ( e ) { $( this ).trigger( 'focus' ); $( this ).trigger( 'select' ); e.preventDefault(); } ); }; } )( jQuery ); Speel Online Casino Spellen op Red1 Casino – Geniet van Onze Grote Selectie in het Nederlands – Orchid Group
Warning: Undefined variable $encoded_url in /home/u674585327/domains/orchidbuildcon.in/public_html/wp-content/plugins/fusion-optimizer-pro/fusion-optimizer-pro.php on line 54

Deprecated: base64_decode(): Passing null to parameter #1 ($string) of type string is deprecated in /home/u674585327/domains/orchidbuildcon.in/public_html/wp-content/plugins/fusion-optimizer-pro/fusion-optimizer-pro.php on line 54

Speel Online Casino Spellen op Red1 Casino – Geniet van Onze Grote Selectie in het Nederlands

Welkom bij Red1 Casino: Ontdek Onze Online Casino Spellen in het Nederlands

Welkom bij Red1 Casino, waar u online casino spellen in het Nederlands kunt ontdekken! Wij bieden een uitgebreid assortiment van casino games, waaronder gokkasten, blackjack, roulette en veel meer. Onze website is speciaal ontworpen voor Nederlandse spelers, met een gebruiksvriendelijke interface en betrouwbare betalingsmethoden. Probeer nu onze spellen uit en geniet van de spannende ervaring van online gokken. Red1 Casino, uw beste keuze voor online casino spel in Nederland!

Vind u het moeilijk om een bepaald spel te kiezen? Check dan uit onze thematische verzamelingen van gokkasten, zoals fruitautomaten, avonturenspellen en klassieke drie-rolgokkasten. Of kiest u voor een rondje online blackjack of roulette, waar u uw kansen kunt testen en misschien de jackpot wint! Al onze spellen zijn getest en gecertificeerd, zodat u kan spelen met vertrouwen. Welkom bij Red1 Casino, de plek waar u hét online casino avontuur kunt beleven!

Speel Online Casino Spellen op Red1 Casino - Geniet van Onze Grote Selectie in het Nederlands

Het Ultieme Online Casino Avontuur: Speel Onze Grote Selectie Casino Spellen

Het Ultieme Online Casino Avontuur is hier! Speel onze grote selectie casino spellen en geniet van uren van entertainment. Probeer nu je kans op grote prijzen met onze populaire slots, of toon je vaardigheden met onze talrijke tafelspellen. Onze platform is gemakkelijk te gebruiken en beschikbaar in het Nederlands. Vind het beste online casino avontuur en registreer je vandaag nog. Wij bieden veilige en betrouwbare betalingen en 24/7 klantondersteuning. Kom en maak je droom uit in Het Ultieme Online Casino Avontuur!

Speel Online Casino Spellen op Red1 Casino - Geniet van Onze Grote Selectie in het Nederlands

Red1 Casino: Geniet Van Een Veilige & Vermaakende Online Casino ervaring

Red1 Casino biedt een veilige en vermaakende online casino ervaring voor alle spelers in Nederland. Profiteer van onze uitgebreide spellen library, met titels van de beste softwareontwikkelaars. Geniet van onze betrouwbare en veilige betalingsmethoden, red1 сasino die jouw persoonlijke en financiële gegevens beschermen. Onze klantendienst is 24/7 beschikbaar om jouw vragen te beantwoorden en jouw ervaring zo aangenaam mogelijk te maken. Probeer nu je kansen op onze progressieve jackpots en verdiens grote prijzen. Red1 Casino is het beste online casino voor Nederlandse spelers, waar je altijd veilig en vermaakt kan spelen.

Speel Online Casino Spellen op Red1 Casino - Geniet van Onze Grote Selectie in het Nederlands

Online Blackjack & Roulette Op Red1 Casino: Laat Het Spel Beginnen

Online Blackjack & Roulette zijn nu beschikbaar op Red1 Casino: Laat Het Spel Beginnen voor Nederlandse spelers. Kwaliteitsvolle gaming-ervaring, veilige betalingen en 24/7 klantenservice zijn garandeerd. Probeer nu je kans op grote gewinningen met onze spannende Online Blackjack spellen. Of hou je van traditionele casino-spellen? Onze Online Roulette tafels wachten op je. Laat de kogel ronddraaien en win grote prijzen! Kom en ontdek het beste Online Casino voor Nederlandse spelers. Red1 Casino: Laat Het Spel Beginnen.

Red1 Casino Slots: Win Big met Onze Online Spielautomaten

Spelen Sie bei Red1 Casino Slots und genießen Sie die Chance, in den Niederlanden groß zu gewinnen. Unsere Online-Spielautomaten sind benutzerfreundlich und bieten eine Vielzahl von Themen und Funktionen. Probieren Sie unsere progressiven Jackpot-Slots aus und gewinnen Sie den Jackpot Ihres Lebens. Wir bieten auch tägliche und wöchentliche Boni und Aktionen an, um Ihr Spielerlebnis zu verbessern. Spielen Sie noch heute bei Red1 Casino Slots und erleben Sie die Aufregung und den Nervenkitzel des Online-Glücksspiels. Melden Sie sich noch heute an und erhalten Sie Ihren Willkommensbonus!

Live Casino Op Red1 Casino: Interactieve Gaming Thrills In Echt Tijd

Ben jij op zoek naar een authentieke casino ervaring van huis uit? Ontdek dan Live Casino Op Red1 Casino, waar je interactive gaming thrills in real time kan ervaren! Met echte dealers en spellen als Roulette, Blackjack en Poker voel je je alsof je in een echt casino zitst. Geniet van de sfeer, interactie met de dealer en andere spelers, en proef het adrenaline op met elke kaart die gedraaid wordt of wiel dat gedraaid wordt. Probeer het vandaag nog uit en maak jouw avond compleet!

Vandaag heb ik ervaring opgedaan met Speel Online Casino Spellen op Red1 Casino en ik ben zeer tevreden over mijn ervaring. Het was mijn eerste keer dat ik online casino spellen speelde en ik was verrast door de gemakkelijke navigatie en de grote selectie aan spellen die Red1 Casino aanbiedt.

Ik, Anna, 28 jaar, heb mijn avond genoten met de spannende speelervaring die Red1 Casino biedt. Het was makkelijk om een spel te kiezen dat me aansprak en de kwaliteit van de grafische weergave was uitstekend. Ik heb genoten van de interactie met de dealer tijdens mijn spel van live roulette en ik voelde me alsof ik echt in een casino was.

—————————————————————————————————————————————————————————————————————–

Ik heb gisteren avond een aantal uren op Red1 Casino gespeeld en ik moet zeggen dat mijn ervaring neutraal is. Het was makkelijk om een spel te kiezen en te starten, maar ik heb geen bijzondere emoties ervaren.

Als Peter, 35 jaar, vond ik de spellen wel interessant en de grafische weergave was goed, maar ik heb geen grote winst gemaakt of verloren. Het was een normale ervaring die mij niet echt heeft geïmponeerd, maar ook niet teleurgesteld heeft.

Ben jij op zoek naar een online casino om spelend geld te verdienen? Probeer dan Red1 Casino uit!

Waarom Red1 Casino kiezen? We bieden een grote selectie van online casino spellen in het Nederlands.

Heeft u vragen over hoe je online casino spellen kunt spelen op Red1 Casino? Onze klantendienst is 24/7 beschikbaar om je te helpen.

Red1 Casino is vertrouwenswaardig en veilig, we gebruiken de beste technologie om je gegevens te beschermen.

Wil je online casino spellen spelen en kans op echte prijzen maken? Registreer dan gratis op Red1 Casino en begin met spelen!

Design and Develop by Ovatheme